/**
 * 
 */
package mx.com.asteca.persistencia.dao;

import java.util.List;

import mx.com.asteca.persistencia.PersistenciaException;
import mx.com.asteca.persistencia.entidades.Docs;
import mx.com.asteca.persistencia.entidades.Personas;

/**
 * @author JAMARO
 *
 */
public interface PersonaDAO extends BaseDAO<Personas, Integer> {
	Personas findByUserName(String userName) throws PersistenciaException;

	List<Personas> findActiveUsers() throws PersistenciaException;

	boolean isAlumno(int idPersona) throws PersistenciaException;

	boolean isAdministrativo(int idPersona) throws PersistenciaException;

	boolean isInstructor(int idPersona) throws PersistenciaException;

	List<Docs> getDocumentosByAlumno(int idPersona)
			throws PersistenciaException;

	List<Docs> getDocumentosByInstructor(int idPersona)
			throws PersistenciaException;

	boolean isReferencia(int idPersona) throws PersistenciaException;

	boolean isContacto(int idPersona) throws PersistenciaException;

	int getIdAlumno(int idPersona) throws PersistenciaException;

	int getIdInstructor(int idPersona) throws PersistenciaException;

	int aumentaContador(int idPersona) throws PersistenciaException;

	void bloqueaUsuario(int idPersona) throws PersistenciaException;

	void desbloqueaUsuario(int idPersona) throws PersistenciaException;

	void reseteaContador(int idPersona) throws PersistenciaException;

	List<Personas> findBloqueados() throws PersistenciaException;
}
